#ifndef DESKTOPWINDOW_H
#define DESKTOPWINDOW_H

#include <QObject>
#include <QScreen>
#include <island-view.h>
#include <QStandardItemModel>

class DesktopWindow : public UkuiQuick::IslandView
{
    Q_OBJECT
    Q_PROPERTY(int id READ id WRITE setId NOTIFY idChanged)
    Q_PROPERTY(QScreen *screen READ screen WRITE setScreen NOTIFY screenChanged)
public:
    explicit DesktopWindow(int id, QScreen* screen);

    int id() const;
    void setId(int newId);

    QScreen *screen() const;
    void setScreen(QScreen *newScreen);

signals:

    void idChanged();

    void screenChanged();

public slots:
    void addWidget(const QString &customString);
    void removeWidget();
    void clearAll();

private:
    int m_id;
    QScreen *m_screen;

    QStandardItemModel *m_model;
};

#endif // DESKTOPWINDOW_H
